/**
 * 全局插件和过滤器
 */
// moment 插件  dayjs 插件  都是处理时间格式

// moment 插件  dayjs 插件  都是处理时间格式
import dayjs from 'dayjs'
// 使用dayjs插件（按需）
import relativeTime from 'dayjs/plugin/relativeTime'
// 国际化=> 指定语言是中文
import 'dayjs/locale/zh-cn'
dayjs.locale('zh-cn')
// 添加插件
dayjs.extend(relativeTime)

// 睡眠函数（test）
const $sleep = () => {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      resolve()
    }, 6000)
  })
}

// 时间插件方法
/**
 * @param {*} val 时间字符串=》转换相对时间（2分钟前）
 */
const relTime = (val) => {
  return dayjs().from(val)
}

// 插件：对象写法
const plugins = {
  install (Vue) {
    // 全局方法
    Vue.prototype.$sleep = $sleep
    // 全局过滤器
    /**
     * 参数1 过滤器名字
     * 参数2 过滤器执行函数
     */
    Vue.filter('relTime', relTime)
    Vue.filter('relTime2', relTime)
  }
}

// 导出插件
export default plugins
